package com.java.project.project.fulu.domain;

import com.alibaba.fastjson.annotation.JSONField;
import com.java.framework.aspectj.lang.annotation.Excel;
import com.java.framework.web.domain.BaseEntity;
import java.util.Date;
import java.util.List;
import java.util.Map;

import lombok.Data;
import lombok.ToString;

/**
 * 订单信息对象 fulu_order
 * 
 * @author admin_dza
 * @date 2021-07-28
 */
@Data
@ToString
public class Order extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 运营商流水号 */
    @JSONField(name = "operator_serial_number")
    @Excel(name = "运营商流水号")
    private String operatorSerialNumber;

    /** 订单类型(1-话费 2-流量 3-卡密 4-直充) */
    @JSONField(name = "order_type")
    @Excel(name = "订单类型",readConverterExp = "1=话费,2=流量,3=卡密,4=直充")
    private Long orderType;

    /** 计费方式 */
    @JSONField(name = "type")
    @Excel(name = "计费方式")
    private String type;

    /** 充值服 */
    @JSONField(name = "server")
    @Excel(name = "充值服")
    private String server;

    /** 充值区 */
    @JSONField(name = "area")
    @Excel(name = "充值区")
    private String area;

    /** 订单完成时间 */
    @JSONField(name = "finish_time")
    @Excel(name = "订单完成时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date finishTime;

    /** 订单状态 */
    @JSONField(name = "order_state")
    @Excel(name = "订单状态")
    private String orderState;

    /** 交易单价 */
    @JSONField(name = "order_price")
    @Excel(name = "交易单价")
    private Float orderPrice;

    /** 购买数量 */
    @JSONField(name = "buy_num")
    @Excel(name = "购买数量")
    private Long buyNum;

    /** 外部订单ID */
    @JSONField(name = "customer_order_no")
    @Excel(name = "外部订单ID")
    private String customerOrderNo;

    /** 充值账号 */
    @JSONField(name = "charge_account")
    @Excel(name = "充值账号")
    private String chargeAccount;

    /** 商品名称 */
    @JSONField(name = "product_name")
    @Excel(name = "商品名称")
    private String productName;

    /** 商品Id */
    @JSONField(name = "product_id")
    @Excel(name = "商品Id")
    private Long productId;

    /** 订单编号 */
    @JSONField(name = "order_id")
    @Excel(name = "订单编号")
    private String orderId;

    /** 订单id */
    private String id;

    @JSONField(name = "cards")
    private List<Card> cards;

    private String activityProductId;
}
